SPIR |
您所在的位置:网站首页 › spirv 编译器 › SPIR |
我有一个电脑着色器: 代码语言:javascript复制#version 450 #extension GL_ARB_separate_shader_objects : enable #extension GL_ARB_gpu_shader_int64 : enable layout(local_size_x_id = 0) in; layout(set = 0, binding = 0) buffer Foo { u64vec2[256] scratchpad; } foo; layout(set = 0, binding = 1) uniform Bar { u64vec2 a; u64vec2 b; } bar; void main() { int foobar = 0; int baz = 0; }我用glslangValidator从LunarG SDK1.0.65.0编译了它,并使用spirv-val检查它,它没有返回任何内容。我在创建shaderInt64时启用了VkDevice。当使用vkCreateShaderModule加载此着色器时,我得到以下验证错误: SPIR-V module not valid: Invalid instruction word count: 0 当我执行下列任何一项操作时,验证错误就会消失: 删除64位扩展并将所有类型更改为int。移除Foo或Bar缓冲区删除main中的任一变量删除layout(local_size_x_id = 0) in我的问题是,这是编译器或验证层中的一个bug,还是我错误地使用了这些特性之一? |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |